#!/bin/bash
echo "🚀 开始将 CodeBlocks 重构为 UEStudio..."

UESTUDIO_SRC="/d/vc/UEStudio/src"

# 备份原始文件
echo "备份原始文件..."
# 注释掉下面这行代码，否则可能备份大量无用数据。数据安全依靠git实现。因此现在做一个提交，提交-m参数为：CodeBlocks改名为UEStudio前，提交修改以便恢复。
# cp -r "$UESTUDIO_SRC" "$UESTUDIO_SRC.backup"

# 重命名核心文件
echo "重命名核心文件..."
cd "$UESTUDIO_SRC"

# 重命名 .cbp 项目文件
find . -name "CodeBlocks*.cbp" -type f | while read file; do
    new_file=$(echo "$file" | sed 's/CodeBlocks/UEStudio/g')
    echo "重命名: $file -> $new_file"
    cp "$file" "$new_file"
    
    # 更新.cbp文件内部内容
    sed -i 's/CodeBlocks/UEStudio/g' "$new_file"
    sed -i 's/codeblocks/uestudio/g' "$new_file"
    sed -i 's/Code::Blocks/UEStudio/g' "$new_file"
done

# 重命名脚本文件
find . -name "CodeBlocks*.sh" -o -name "CodeBlocks*.bat" | while read file; do
    new_file=$(echo "$file" | sed 's/CodeBlocks/UEStudio/g')
    echo "重命名: $file -> $new_file"
    cp "$file" "$new_file"
    
    # 更新脚本内容
    sed -i 's/CodeBlocks/UEStudio/g' "$new_file"
    sed -i 's/codeblocks/uestudio/g' "$new_file"
    sed -i 's/CODEBLOCKS/UESTUDIO/g' "$new_file"
done

# 创建构建配置
cat > UEStudio.build.config << 'CONFIGEOF'
# UEStudio 构建配置
# 目标平台配置
TARGET_PLATFORMS=(
    "windows-x86_64-ucrt"
    "windows-x86_64-msvc"
    "windows-i686-mingw" 
    "linux-x86_64-gcc"
    "linux-aarch64-gcc"
    "macos-x86_64-clang"
    "macos-arm64-clang"
)

# wxWidgets 版本配置
WXWIDGETS_VERSIONS=(
    "wx-3.2.7-unicode-release"
    "wx-3.2.7-unicode-debug"
    "wx-3.2.7-ansi-release"
    "wx-3.1.7-unicode-release"
)

# 构建类型
BUILD_TYPES=(
    "Release"
    "Debug"
    "RelWithDebInfo"
    "MinSizeRel"
)

# 启动界面主题
UI_THEMES=(
    "codeblocks-classic"    # CodeBlocks 25.03 经典界面
    "vscode-modern"         # VS Code 风格现代界面
    "vc2022-dark"           # VC++ 2022 深色主题
    "vc2022-light"          # VC++ 2022 浅色主题
    "clion-inspired"        # CLion 风格界面
    "uestudio-original"     # UEStudio 原创界面
)
CONFIGEOF

echo "✅ 项目重构完成！"
echo "新的项目结构："
find . -name "UEStudio*" -type f | head -10
